import request from "@/utils/request";

const MRTPRODUCT_BASE_URL = "/api/v1/mrt-product";

const MrtProductAPI = {
  /** 获取商品分页数据 */
  getPage(queryParams) {
    return request({
      url: `${MRTPRODUCT_BASE_URL}/page`,
      method: "get",
      params: queryParams,
    });
  },
  /**
   * 获取商品表单数据
   *
   * @param id 商品ID
   * @returns 商品表单数据
   */
  getFormData(id) {
    return request({
      url: `${MRTPRODUCT_BASE_URL}/${id}/form`,
      method: "get",
    });
  },

  /**
   *  添加商品
   *
   *  @param data 商品表单数据
   */
  add(data) {
    return request({
      url: `${MRTPRODUCT_BASE_URL}`,
      method: "post",
      data: data,
    });
  },

  /**
   * 更新商品
   *
   * @param id 商品ID
   * @param data 商品表单数据
   */
  update(id, data) {
    return request({
      url: `${MRTPRODUCT_BASE_URL}/${id}`,
      method: "put",
      data: data,
    });
  },

  /**
   * 批量删除商品，多个以英文逗号(,)分割
   *
   * @param ids 商品ID字符串，多个以英文逗号(,)分割
   */
  deleteByIds(ids) {
    return request({
      url: `${MRTPRODUCT_BASE_URL}/${ids}`,
      method: "delete",
    });
  },
};

export default MrtProductAPI;

/** 商品分页查询参数示例 
{
    pageNum: 1,
    pageSize: 10
}
*/

/** 商品表单对象字段说明
    name: 商品名称
    slug: 商品别名（URL标识）
    category: 商品分类
    usageType: 用途
    brand: 品牌名称
    price: 当前价格
    originalPrice: 原价（划线价）
    stock: 库存数量
    sku: 库存编码 SKU
    thumbnail: 缩略图 URL
    images: 商品图片（多个 URL，可用 JSON 存储）
    description: 商品描述（HTML 格式）
    tags: 标签（英文逗号分隔）
    weight: 重量（kg）
    dimensions: 尺寸（长x宽x高，单位cm）
    status: 状态(1:上架;0:下架)
    salesCount: 销量统计
    rating: 平均评分
    metaTitle: SEO标题
    metaDescription: SEO描述
    regin: 地区
*/
